// 获取当前题目内容
var currentOption = {
  stxx: [
    {
      xxnr: "&nbsp; 农业农村现代化&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br/>\r",
      xxbh: "A",
    },
    {
      xxnr: "&nbsp; 乡村治理有效&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br/>\r",
      xxbh: "B",
    },
    {
      xxnr: "&nbsp; 建立健全城乡融合发展的体制机制和建立健全城乡融合发展的体制机制和建立健全城乡融合发展的体制机制和建立健全城乡融合发展的体制机制和政策体系<br/>\r",
      xxbh: "C",
    },
    {
      xxnr: "&nbsp; 农业农村优先发展<br/>\r",
      xxbh: "D",
    },
  ],
  stid: "N1624032510000000304",
  stnr: "<p>实施乡村振兴战略的总目标是（）。<br/>\r</p>",
};
// 获取全部题目
var examquestions = [
  {
    tmlb: [
      {
        bjzt: null,
        yhda: null,
        yhstid: "N1624032510000000302",
        stlx: "2",
      },
      {
        bjzt: 1,
        yhda: null,
        yhstid: "N1624032510000000303",
        stlx: "2",
      },
      {
        bjzt: null,
        yhda: null,
        yhstid: "N1624032510000000304",
        stlx: "1",
      },
      {
        bjzt: null,
        yhda: null,
        yhstid: "N1624032510000000305",
        stlx: "2",
      },
    ],
    jgid: "N1624032010000000022",
    jgmc: "第一大题",
  },
  {
    tmlb: [
      {
        bjzt: 1,
        yhda: "ertergfgdfergerg",
        yhstid: "N1624032010000000270",
        stlx: "3",
      },
      {
        bjzt: null,
        yhda: "ertergfgdfergerg",
        yhstid: "N1624032010000000271",
        stlx: "4",
      },
      {
        bjzt: null,
        yhda: "ertergfgdfergerg",
        yhstid: "N1624032010000000272",
        stlx: "4",
      },
      {
        bjzt: null,
        yhda: "ertergfgdfergerg",
        yhstid: "N1624032010000000273",
        stlx: "4",
      },
      {
        bjzt: null,
        yhda: "ertergfgdfergerg",
        yhstid: "N1624032010000000274",
        stlx: "4",
      },
    ],
    jgid: "N1624032010000000021",
    jgmc: "第二大题",
  },
  {
    tmlb: [
      {
        bjzt: null,
        yhda: "ertergfgdfergerg",
        yhstid: "N1624032010000000290",
        stlx: "4",
      },
      {
        bjzt: null,
        yhda: "ertergfgdfergerg",
        yhstid: "N1624032010000000291",
        stlx: "4",
      },
      {
        bjzt: 1,
        yhda: "ertergfgdfergerg",
        yhstid: "N1624032010000000292",
        stlx: "4",
      },
    ],
    jgid: "N1624031510000000018",
    jgmc: "第三大题",
  },
];

// 当前题目内容
var currentSubject = {
  // 字体大小
  size: "normal",
  // 大标题
  topTitle: "",
  // 展示序号
  index: "",
  // 题目标题
  title: currentOption.stnr,
  // 题目id
  id: currentOption.stid,
  // 题目选项列表
  option: currentOption.stxx,
  // 当前题目答案
  current: "",
};
// 中间frame
var subjectIframe = $("#subjectIframe");
// 当前选择题目
var currentType = "";
var currentId = "";

// 帮助文档标记
var hintFlag = false;
// 是否显示答题卡
var showSheet = false;
// 是否显示mask
var maskShow = false;

// 获取模板内容
var getTpl = sheetBody.innerHTML;
//  渲染视图
var view = document.getElementById("view");

// layui
var layer = layui.layer;
var laytpl = layui.laytpl;

// 获取examquestions
// getCurrentData();
// 渲染内容
laytpl(getTpl).render(examquestions, function (html) {
  view.innerHTML = html;
});

// 初始化执行函数
initProgress();
changeSheetContent();

// 题目列表点击事件
$(".sheet-content-body-index").click(function () {
  currentType = $(this).data("type");
  currentId = $(this).data("id");
  // 获取当前题目内容
  currentSubject.index = $(this).data("index");
  currentSubject.topTitle = $(this).data("title");
  // 初始化题目
  initCurrent();
  // 修改答题卡
  changeSheetContent();

  // 隐藏答题卡
  $(".header-sheet-left").click();
  // 标记按钮切换状态
  if ($(this).data("sign") == 1) {
    $(".signBtn").hide();
    $(".signedBtn").css("display", "flex");
  } else {
    $(".signedBtn").hide();
    $(".signBtn").css("display", "flex");
  }
});

// 默认第一题
$(".sheet-content-body-index").each(function (index, el) {
  if (index === 0) {
    $(el).trigger("click");
  }
});

// 上一题
$(".lastBtn").click(function () {
  var lastIndex = 0;
  $(".sheet-content-body-index").each(function (index, el) {
    if (currentId === $(el).data("id")) {
      lastIndex = index - 1;
    }
  });
  if (lastIndex !== -1) {
    $(".sheet-content-body-index").each(function (index, el) {
      if (index === lastIndex) {
        $(el).trigger("click");
      }
    });
  } else {
    layer.msg("没有上一题了", { icon: 5 });
  }
});
// 下一题
$(".nextBtn").click(function () {
  var nextIndex = 0;
  $(".sheet-content-body-index").each(function (index, el) {
    if (currentId === $(el).data("id")) {
      nextIndex = index + 1;
    }
  });
  if (nextIndex !== $(".sheet-content-body-index").length) {
    $(".sheet-content-body-index").each(function (index, el) {
      if (index === nextIndex) {
        $(el).trigger("click");
      }
    });
  } else {
    layer.msg("没有下一题了", { icon: 5 });
  }
});

// 标记/取消标记 本题
$(".signBtn").click(function () {
  $(".signBtn").hide();
  $(".signedBtn").css("display", "flex");

  signBtnClick(true);
});
$(".signedBtn").click(function () {
  $(".signedBtn").hide();
  $(".signBtn").css("display", "flex");
  signBtnClick(false);
});

// 帮助
$(".action-bar-hint").click(function () {
  if (hintFlag) {
    hintFlag = false;
    $(".action-bar-hint-content").hide();
    $(".action-bar-hint-img").attr("src", "./imgs/hint.png");
  } else {
    hintFlag = true;
    $(".action-bar-hint-content").show();
    $(".action-bar-hint-img").attr("src", "./imgs/hint-blue.png");
  }
});

// 答题卡点击显示
$(".answerCard").click(function () {
  showSheet = true;
  $(".header").css("display", "none");
  $(".header-sheet").css("display", "flex");
  $(".sheet").show();
  $(".centre").hide();
  $(".footer").hide();
});

// 答题卡点击左侧返回按钮
$(".header-sheet-left").click(function () {
  showSheet = false;
  $(".header").css("display", "flex");
  $(".header-sheet").css("display", "none");
  $(".sheet").hide();
  $(".centre").show();
  $(".footer").show();
});

// 点击设置
$(".header-right").click(function () {
  if (maskShow) {
    maskShow = false;
    $(".mask").css("display", "none");
  } else {
    maskShow = true;
    $(".mask").css("display", "flex");
  }
});
$(".mask").click(function () {
  $(".header-right").click();
});

$(".fontSet").click(function () {
  $(".mask-full").css("display", "flex");
  $(".fontSetBox").show();
});

$(".help").click(function () {
  $(".mask-full").css("display", "flex");
  $(".helpBox").show();
});

$(".mask-full .cancel").click(function () {
  $(".mask-full").css("display", "none");
  $(".helpBox").hide();
  $(".fontSetBox").hide();
  $(".sizeBtn").each(function (index, el) {
    if ($(el).data("font") === currentSubject.size) {
      $(el).addClass("sizeBtn-current");
    } else {
      $(el).removeClass("sizeBtn-current");
    }
  });
});

var newSize = "";

$(".sizeBtn").click(function () {
  $(".sizeBtn").each(function (index, el) {
    $(el).removeClass("sizeBtn-current");
  });
  $(this).addClass("sizeBtn-current");
  newSize = $(this).data("font");
});

// 点击确认修改
$(".confirmBtn").click(function () {
  if (newSize) {
    currentSubject.size = newSize;
    subjectIframe[0].contentWindow.changeSize(newSize);
  }
  $(".mask-full .cancel").click();
});

// 交卷
$(".footer-finishBtn").click(function () {
  layer.open({
    title: "提示",
    content: "确定要交卷吗?",
    btn: ["确定", "取消"],
    yes: function (index, layero) {
      //按钮【按钮一】的回调
      window.location.replace("./end.html");
    },
    btn2: function (index, layero) {
      //按钮【按钮二】的回调
      //return false 开启该代码可禁止点击该按钮关闭
    },
  });
});

// 获取题目信息
function getCurrentData() {
  ajax({
    url: "/test",
    type: "get",
    // data: {},
    success: function (res) {},
    error: function () {},
  });
}
// 获取当前题目信息
function getCurrentTopic(id) {
  ajax({
    url: "/test",
    type: "get",
    data: {
      id: id,
    },
    success: function (res) {},
    error: function () {},
  });
}
// 初始化当前题目
function initCurrent() {
  // 获取当前题目数据
  // ajax;
  //

  // 修改子页面
  switch (currentType) {
    // 单选
    case 1:
      subjectIframe.attr("src", "./pages/select.html");
      break;
    // 多选
    case 2:
      subjectIframe.attr("src", "./pages/multiple.html");
      break;
    // 判断
    case 3:
      subjectIframe.attr("src", "./pages/judge.html");
      break;
    // 简答
    case 4:
      subjectIframe.attr("src", "./pages/short.html");
      break;
  }
}
// 初始化左侧页面
function changeSheetContent() {
  $(".sheet-content-body-index").each(function (index, el) {
    // 修改标记状态
    if ($(el).data("sign") == 1) {
      $(el).addClass("sheet-content-body-index-sign");
    } else {
      $(el).removeClass("sheet-content-body-index-sign");
    }
    // 答题状态
    if ($(el).data("answering") && $(el).data("answering").length) {
      $(el).addClass("sheet-content-body-index-answered");
    } else {
      $(el).removeClass("sheet-content-body-index-answered");
    }
    // 选中状态
    $(el).removeClass("sheet-content-body-index-checked");
    if (currentId == $(el).data("id")) {
      $(el).addClass("sheet-content-body-index-checked");
    }
  });
}
// 标记题目函数
function signBtnClick(flag) {
  if (flag) {
    $(".sheet-content-body-index").each(function (index, el) {
      if (currentId == $(el).data("id")) {
        $(el).data("sign", "1");
      }
    });
  } else {
    $(".sheet-content-body-index").each(function (index, el) {
      if (currentId == $(el).data("id")) {
        $(el).data("sign", "0");
      }
    });
  }
  // 修改数据
  examquestions = examquestions.map(function (item) {
    item.tmlb = item.tmlb.map(function (item1) {
      if (item1.yhstid === currentId) {
        if (flag) {
          item1.bjzt = "1";
        } else {
          item1.bjzt = "0";
        }
      }
      return item1;
    });
    return item;
  });
  changeSheetContent();
}
// 初始化进度条
function initProgress() {
  var allItem = 0;
  var answeredItem = 0;

  examquestions.forEach(function (item) {
    item.tmlb.forEach(function (item1) {
      if (item1.yhda) {
        answeredItem++;
      }
      allItem++;
    });
  });
  var content =
    '<span style="color:#42ba7a">' + answeredItem + "</span>" + "/" + allItem;
  $(".rectangle-text").html(content);
}
// 更改iframe 高度
function autoIframeHeight() {
  // 获取iframe的document对象
  var iframeDocument =
    document.getElementById("subjectIframe").contentDocument ||
    document.getElementById("subjectIframe").contentWindow.document;

  // 获取div的高度
  var divHeight = iframeDocument
    .getElementById("maniBody")
    .getBoundingClientRect().height;

  // 输出div的高度
  document.getElementById("subjectIframe").height = divHeight;
}
// 获取当前数据
function getCurrentSubject() {
  return currentSubject;
}
// 修改答案
function changeData(data) {
  $(".sheet-content-body-index").each(function (index, el) {
    // 答题状态
    if ($(el).data("id") === currentId) {
      $(el).data("answering", data);
    }
  });
  // 修改数据
  examquestions = examquestions.map(function (item) {
    item.tmlb = item.tmlb.map(function (item1) {
      if (item1.yhstid === currentId) {
        item1.yhda = data;
      }
      return item1;
    });
    return item;
  });
  initProgress();
  changeSheetContent();
}

// 获取当前题目答案
function getCurrentAnswer() {
  var data = "";
  $(".sheet-content-body-index").each(function (index, el) {
    // 答题状态
    if ($(el).data("id") === currentId) {
      data = $(el).data("answering");
    }
  });
  return data;
}

// 倒计时
$(document).ready(function () {
  var totalSeconds = 3600; // 假设我们倒计时1小时 (3600秒)

  function updateTimer() {
    var hours = Math.floor(totalSeconds / 3600);
    var minutes = Math.floor((totalSeconds % 3600) / 60);
    var seconds = totalSeconds % 60;

    hours = hours < 10 ? "0" + hours : hours;
    minutes = minutes < 10 ? "0" + minutes : minutes;
    seconds = seconds < 10 ? "0" + seconds : seconds;

    $("#timer").text(hours + ":" + minutes + ":" + seconds);

    if (totalSeconds > 0) {
      totalSeconds--;
    } else {
      clearInterval(interval);
    }
  }

  updateTimer(); // 初始更新
  var interval = setInterval(updateTimer, 1000); // 每秒更新一次
});

// 离开此页函数
